package com.ecoolex.hotel.saas.entity;

import com.ecoolex.framework.common.annotation.Description;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import org.springframework.lang.NonNull;

public class StoreWeixinConfigExample {
    protected String orderByClause;

    protected boolean distinct;

    protected List<Criteria> oredCriteria;

    protected Integer offset;

    protected Integer rows;

    public StoreWeixinConfigExample() {
        oredCriteria = new ArrayList<Criteria>();
    }

    public void setOrderByClause(String orderByClause) {
        this.orderByClause = orderByClause;
    }

    public String getOrderByClause() {
        return orderByClause;
    }

    public void setDistinct(boolean distinct) {
        this.distinct = distinct;
    }

    public boolean isDistinct() {
        return distinct;
    }

    public List<Criteria> getOredCriteria() {
        return oredCriteria;
    }

    public void or(Criteria criteria) {
        oredCriteria.add(criteria);
    }

    public Criteria or() {
        Criteria criteria = createCriteriaInternal();
        oredCriteria.add(criteria);
        return criteria;
    }

    public StoreWeixinConfigExample orderBy(String orderByClause) {
        this.setOrderByClause(orderByClause);
        return this;
    }

    public StoreWeixinConfigExample orderBy(String ... orderByClauses) {
        StringBuffer sb = new StringBuffer();
        for (int i = 0; i < orderByClauses.length; i++) {
            sb.append(orderByClauses[i]);
            if (i < orderByClauses.length - 1) {
                sb.append(" , ");
            }
        }
        this.setOrderByClause(sb.toString());
        return this;
    }

    public Criteria createCriteria() {
        Criteria criteria = createCriteriaInternal();
        if (oredCriteria.size() == 0) {
            oredCriteria.add(criteria);
        }
        return criteria;
    }

    protected Criteria createCriteriaInternal() {
        Criteria criteria = new Criteria(this);
        return criteria;
    }

    public void clear() {
        oredCriteria.clear();
        orderByClause = null;
        distinct = false;
        rows = null;
        offset = null;
    }

    public static Criteria newAndCreateCriteria() {
        StoreWeixinConfigExample example = new StoreWeixinConfigExample();
        return example.createCriteria();
    }

    public StoreWeixinConfigExample when(boolean condition, IExampleWhen then) {
        if (condition) {
            then.example(this);
        }
        return this;
    }

    public StoreWeixinConfigExample when(boolean condition, IExampleWhen then, IExampleWhen otherwise) {
        if (condition) {
            then.example(this);
        } else {
            otherwise.example(this);
        }
        return this;
    }

    public void setOffset(Integer offset) {
        this.offset = offset;
    }

    public Integer getOffset() {
        return this.offset;
    }

    public void setRows(Integer rows) {
        this.rows = rows;
    }

    public Integer getRows() {
        return this.rows;
    }

    public StoreWeixinConfigExample limit(Integer rows) {
        this.rows = rows;
        return this;
    }

    public StoreWeixinConfigExample limit(Integer offset, Integer rows) {
        this.offset = offset;
        this.rows = rows;
        return this;
    }

    public StoreWeixinConfigExample page(Integer page, Integer pageSize) {
        this.offset = page * pageSize;
        this.rows = pageSize;
        return this;
    }

    protected abstract static class GeneratedCriteria {
        protected List<Criterion> criteria;

        protected GeneratedCriteria() {
            super();
            criteria = new ArrayList<Criterion>();
        }

        public boolean isValid() {
            return criteria.size() > 0;
        }

        public List<Criterion> getAllCriteria() {
            return criteria;
        }

        public List<Criterion> getCriteria() {
            return criteria;
        }

        protected void addCriterion(String condition) {
            if (condition == null) {
                throw new RuntimeException("Value for condition cannot be null");
            }
            criteria.add(new Criterion(condition));
        }

        protected void addCriterion(String condition, Object value, String property) {
            if (value == null) {
                throw new RuntimeException("Value for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value));
        }

        protected void addCriterion(String condition, Object value1, Object value2, String property) {
            if (value1 == null || value2 == null) {
                throw new RuntimeException("Between values for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value1, value2));
        }

        public Criteria andStoreIdIsNull() {
            addCriterion("storeweixinconfig.StoreId is null");
            return (Criteria) this;
        }

        public Criteria andStoreIdIsNotNull() {
            addCriterion("storeweixinconfig.StoreId is not null");
            return (Criteria) this;
        }

        public Criteria andStoreIdEqualTo(Integer value) {
            addCriterion("storeweixinconfig.StoreId =", value, "storeId");
            return (Criteria) this;
        }

        public Criteria andStoreIdEqualToColumn(StoreWeixinConfig.Column column) {
            addCriterion(new StringBuilder("storeweixinconfig.StoreId = ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andStoreIdNotEqualTo(Integer value) {
            addCriterion("storeweixinconfig.StoreId <>", value, "storeId");
            return (Criteria) this;
        }

        public Criteria andStoreIdNotEqualToColumn(StoreWeixinConfig.Column column) {
            addCriterion(new StringBuilder("storeweixinconfig.StoreId <> ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andStoreIdGreaterThan(Integer value) {
            addCriterion("storeweixinconfig.StoreId >", value, "storeId");
            return (Criteria) this;
        }

        public Criteria andStoreIdGreaterThanColumn(StoreWeixinConfig.Column column) {
            addCriterion(new StringBuilder("storeweixinconfig.StoreId > ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andStoreIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("storeweixinconfig.StoreId >=", value, "storeId");
            return (Criteria) this;
        }

        public Criteria andStoreIdGreaterThanOrEqualToColumn(StoreWeixinConfig.Column column) {
            addCriterion(new StringBuilder("storeweixinconfig.StoreId >= ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andStoreIdLessThan(Integer value) {
            addCriterion("storeweixinconfig.StoreId <", value, "storeId");
            return (Criteria) this;
        }

        public Criteria andStoreIdLessThanColumn(StoreWeixinConfig.Column column) {
            addCriterion(new StringBuilder("storeweixinconfig.StoreId < ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andStoreIdLessThanOrEqualTo(Integer value) {
            addCriterion("storeweixinconfig.StoreId <=", value, "storeId");
            return (Criteria) this;
        }

        public Criteria andStoreIdLessThanOrEqualToColumn(StoreWeixinConfig.Column column) {
            addCriterion(new StringBuilder("storeweixinconfig.StoreId <= ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andStoreIdIn(List<Integer> values) {
            addCriterion("storeweixinconfig.StoreId in", values, "storeId");
            return (Criteria) this;
        }

        public Criteria andStoreIdNotIn(List<Integer> values) {
            addCriterion("storeweixinconfig.StoreId not in", values, "storeId");
            return (Criteria) this;
        }

        public Criteria andStoreIdBetween(Integer value1, Integer value2) {
            addCriterion("storeweixinconfig.StoreId between", value1, value2, "storeId");
            return (Criteria) this;
        }

        public Criteria andStoreIdNotBetween(Integer value1, Integer value2) {
            addCriterion("storeweixinconfig.StoreId not between", value1, value2, "storeId");
            return (Criteria) this;
        }

        public Criteria andAppIdIsNull() {
            addCriterion("storeweixinconfig.AppId is null");
            return (Criteria) this;
        }

        public Criteria andAppIdIsNotNull() {
            addCriterion("storeweixinconfig.AppId is not null");
            return (Criteria) this;
        }

        public Criteria andAppIdEqualTo(String value) {
            addCriterion("storeweixinconfig.AppId =", value, "appId");
            return (Criteria) this;
        }

        public Criteria andAppIdEqualToColumn(StoreWeixinConfig.Column column) {
            addCriterion(new StringBuilder("storeweixinconfig.AppId = ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andAppIdNotEqualTo(String value) {
            addCriterion("storeweixinconfig.AppId <>", value, "appId");
            return (Criteria) this;
        }

        public Criteria andAppIdNotEqualToColumn(StoreWeixinConfig.Column column) {
            addCriterion(new StringBuilder("storeweixinconfig.AppId <> ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andAppIdGreaterThan(String value) {
            addCriterion("storeweixinconfig.AppId >", value, "appId");
            return (Criteria) this;
        }

        public Criteria andAppIdGreaterThanColumn(StoreWeixinConfig.Column column) {
            addCriterion(new StringBuilder("storeweixinconfig.AppId > ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andAppIdGreaterThanOrEqualTo(String value) {
            addCriterion("storeweixinconfig.AppId >=", value, "appId");
            return (Criteria) this;
        }

        public Criteria andAppIdGreaterThanOrEqualToColumn(StoreWeixinConfig.Column column) {
            addCriterion(new StringBuilder("storeweixinconfig.AppId >= ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andAppIdLessThan(String value) {
            addCriterion("storeweixinconfig.AppId <", value, "appId");
            return (Criteria) this;
        }

        public Criteria andAppIdLessThanColumn(StoreWeixinConfig.Column column) {
            addCriterion(new StringBuilder("storeweixinconfig.AppId < ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andAppIdLessThanOrEqualTo(String value) {
            addCriterion("storeweixinconfig.AppId <=", value, "appId");
            return (Criteria) this;
        }

        public Criteria andAppIdLessThanOrEqualToColumn(StoreWeixinConfig.Column column) {
            addCriterion(new StringBuilder("storeweixinconfig.AppId <= ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andAppIdLike(String value) {
            addCriterion("storeweixinconfig.AppId like", value, "appId");
            return (Criteria) this;
        }

        public Criteria andAppIdNotLike(String value) {
            addCriterion("storeweixinconfig.AppId not like", value, "appId");
            return (Criteria) this;
        }

        public Criteria andAppIdIn(List<String> values) {
            addCriterion("storeweixinconfig.AppId in", values, "appId");
            return (Criteria) this;
        }

        public Criteria andAppIdNotIn(List<String> values) {
            addCriterion("storeweixinconfig.AppId not in", values, "appId");
            return (Criteria) this;
        }

        public Criteria andAppIdBetween(String value1, String value2) {
            addCriterion("storeweixinconfig.AppId between", value1, value2, "appId");
            return (Criteria) this;
        }

        public Criteria andAppIdNotBetween(String value1, String value2) {
            addCriterion("storeweixinconfig.AppId not between", value1, value2, "appId");
            return (Criteria) this;
        }

        public Criteria andSecretIsNull() {
            addCriterion("storeweixinconfig.Secret is null");
            return (Criteria) this;
        }

        public Criteria andSecretIsNotNull() {
            addCriterion("storeweixinconfig.Secret is not null");
            return (Criteria) this;
        }

        public Criteria andSecretEqualTo(String value) {
            addCriterion("storeweixinconfig.Secret =", value, "secret");
            return (Criteria) this;
        }

        public Criteria andSecretEqualToColumn(StoreWeixinConfig.Column column) {
            addCriterion(new StringBuilder("storeweixinconfig.Secret = ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andSecretNotEqualTo(String value) {
            addCriterion("storeweixinconfig.Secret <>", value, "secret");
            return (Criteria) this;
        }

        public Criteria andSecretNotEqualToColumn(StoreWeixinConfig.Column column) {
            addCriterion(new StringBuilder("storeweixinconfig.Secret <> ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andSecretGreaterThan(String value) {
            addCriterion("storeweixinconfig.Secret >", value, "secret");
            return (Criteria) this;
        }

        public Criteria andSecretGreaterThanColumn(StoreWeixinConfig.Column column) {
            addCriterion(new StringBuilder("storeweixinconfig.Secret > ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andSecretGreaterThanOrEqualTo(String value) {
            addCriterion("storeweixinconfig.Secret >=", value, "secret");
            return (Criteria) this;
        }

        public Criteria andSecretGreaterThanOrEqualToColumn(StoreWeixinConfig.Column column) {
            addCriterion(new StringBuilder("storeweixinconfig.Secret >= ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andSecretLessThan(String value) {
            addCriterion("storeweixinconfig.Secret <", value, "secret");
            return (Criteria) this;
        }

        public Criteria andSecretLessThanColumn(StoreWeixinConfig.Column column) {
            addCriterion(new StringBuilder("storeweixinconfig.Secret < ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andSecretLessThanOrEqualTo(String value) {
            addCriterion("storeweixinconfig.Secret <=", value, "secret");
            return (Criteria) this;
        }

        public Criteria andSecretLessThanOrEqualToColumn(StoreWeixinConfig.Column column) {
            addCriterion(new StringBuilder("storeweixinconfig.Secret <= ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andSecretLike(String value) {
            addCriterion("storeweixinconfig.Secret like", value, "secret");
            return (Criteria) this;
        }

        public Criteria andSecretNotLike(String value) {
            addCriterion("storeweixinconfig.Secret not like", value, "secret");
            return (Criteria) this;
        }

        public Criteria andSecretIn(List<String> values) {
            addCriterion("storeweixinconfig.Secret in", values, "secret");
            return (Criteria) this;
        }

        public Criteria andSecretNotIn(List<String> values) {
            addCriterion("storeweixinconfig.Secret not in", values, "secret");
            return (Criteria) this;
        }

        public Criteria andSecretBetween(String value1, String value2) {
            addCriterion("storeweixinconfig.Secret between", value1, value2, "secret");
            return (Criteria) this;
        }

        public Criteria andSecretNotBetween(String value1, String value2) {
            addCriterion("storeweixinconfig.Secret not between", value1, value2, "secret");
            return (Criteria) this;
        }

        public Criteria andMchIdIsNull() {
            addCriterion("storeweixinconfig.MchId is null");
            return (Criteria) this;
        }

        public Criteria andMchIdIsNotNull() {
            addCriterion("storeweixinconfig.MchId is not null");
            return (Criteria) this;
        }

        public Criteria andMchIdEqualTo(String value) {
            addCriterion("storeweixinconfig.MchId =", value, "mchId");
            return (Criteria) this;
        }

        public Criteria andMchIdEqualToColumn(StoreWeixinConfig.Column column) {
            addCriterion(new StringBuilder("storeweixinconfig.MchId = ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andMchIdNotEqualTo(String value) {
            addCriterion("storeweixinconfig.MchId <>", value, "mchId");
            return (Criteria) this;
        }

        public Criteria andMchIdNotEqualToColumn(StoreWeixinConfig.Column column) {
            addCriterion(new StringBuilder("storeweixinconfig.MchId <> ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andMchIdGreaterThan(String value) {
            addCriterion("storeweixinconfig.MchId >", value, "mchId");
            return (Criteria) this;
        }

        public Criteria andMchIdGreaterThanColumn(StoreWeixinConfig.Column column) {
            addCriterion(new StringBuilder("storeweixinconfig.MchId > ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andMchIdGreaterThanOrEqualTo(String value) {
            addCriterion("storeweixinconfig.MchId >=", value, "mchId");
            return (Criteria) this;
        }

        public Criteria andMchIdGreaterThanOrEqualToColumn(StoreWeixinConfig.Column column) {
            addCriterion(new StringBuilder("storeweixinconfig.MchId >= ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andMchIdLessThan(String value) {
            addCriterion("storeweixinconfig.MchId <", value, "mchId");
            return (Criteria) this;
        }

        public Criteria andMchIdLessThanColumn(StoreWeixinConfig.Column column) {
            addCriterion(new StringBuilder("storeweixinconfig.MchId < ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andMchIdLessThanOrEqualTo(String value) {
            addCriterion("storeweixinconfig.MchId <=", value, "mchId");
            return (Criteria) this;
        }

        public Criteria andMchIdLessThanOrEqualToColumn(StoreWeixinConfig.Column column) {
            addCriterion(new StringBuilder("storeweixinconfig.MchId <= ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andMchIdLike(String value) {
            addCriterion("storeweixinconfig.MchId like", value, "mchId");
            return (Criteria) this;
        }

        public Criteria andMchIdNotLike(String value) {
            addCriterion("storeweixinconfig.MchId not like", value, "mchId");
            return (Criteria) this;
        }

        public Criteria andMchIdIn(List<String> values) {
            addCriterion("storeweixinconfig.MchId in", values, "mchId");
            return (Criteria) this;
        }

        public Criteria andMchIdNotIn(List<String> values) {
            addCriterion("storeweixinconfig.MchId not in", values, "mchId");
            return (Criteria) this;
        }

        public Criteria andMchIdBetween(String value1, String value2) {
            addCriterion("storeweixinconfig.MchId between", value1, value2, "mchId");
            return (Criteria) this;
        }

        public Criteria andMchIdNotBetween(String value1, String value2) {
            addCriterion("storeweixinconfig.MchId not between", value1, value2, "mchId");
            return (Criteria) this;
        }

        public Criteria andMchKeyIsNull() {
            addCriterion("storeweixinconfig.MchKey is null");
            return (Criteria) this;
        }

        public Criteria andMchKeyIsNotNull() {
            addCriterion("storeweixinconfig.MchKey is not null");
            return (Criteria) this;
        }

        public Criteria andMchKeyEqualTo(String value) {
            addCriterion("storeweixinconfig.MchKey =", value, "mchKey");
            return (Criteria) this;
        }

        public Criteria andMchKeyEqualToColumn(StoreWeixinConfig.Column column) {
            addCriterion(new StringBuilder("storeweixinconfig.MchKey = ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andMchKeyNotEqualTo(String value) {
            addCriterion("storeweixinconfig.MchKey <>", value, "mchKey");
            return (Criteria) this;
        }

        public Criteria andMchKeyNotEqualToColumn(StoreWeixinConfig.Column column) {
            addCriterion(new StringBuilder("storeweixinconfig.MchKey <> ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andMchKeyGreaterThan(String value) {
            addCriterion("storeweixinconfig.MchKey >", value, "mchKey");
            return (Criteria) this;
        }

        public Criteria andMchKeyGreaterThanColumn(StoreWeixinConfig.Column column) {
            addCriterion(new StringBuilder("storeweixinconfig.MchKey > ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andMchKeyGreaterThanOrEqualTo(String value) {
            addCriterion("storeweixinconfig.MchKey >=", value, "mchKey");
            return (Criteria) this;
        }

        public Criteria andMchKeyGreaterThanOrEqualToColumn(StoreWeixinConfig.Column column) {
            addCriterion(new StringBuilder("storeweixinconfig.MchKey >= ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andMchKeyLessThan(String value) {
            addCriterion("storeweixinconfig.MchKey <", value, "mchKey");
            return (Criteria) this;
        }

        public Criteria andMchKeyLessThanColumn(StoreWeixinConfig.Column column) {
            addCriterion(new StringBuilder("storeweixinconfig.MchKey < ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andMchKeyLessThanOrEqualTo(String value) {
            addCriterion("storeweixinconfig.MchKey <=", value, "mchKey");
            return (Criteria) this;
        }

        public Criteria andMchKeyLessThanOrEqualToColumn(StoreWeixinConfig.Column column) {
            addCriterion(new StringBuilder("storeweixinconfig.MchKey <= ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andMchKeyLike(String value) {
            addCriterion("storeweixinconfig.MchKey like", value, "mchKey");
            return (Criteria) this;
        }

        public Criteria andMchKeyNotLike(String value) {
            addCriterion("storeweixinconfig.MchKey not like", value, "mchKey");
            return (Criteria) this;
        }

        public Criteria andMchKeyIn(List<String> values) {
            addCriterion("storeweixinconfig.MchKey in", values, "mchKey");
            return (Criteria) this;
        }

        public Criteria andMchKeyNotIn(List<String> values) {
            addCriterion("storeweixinconfig.MchKey not in", values, "mchKey");
            return (Criteria) this;
        }

        public Criteria andMchKeyBetween(String value1, String value2) {
            addCriterion("storeweixinconfig.MchKey between", value1, value2, "mchKey");
            return (Criteria) this;
        }

        public Criteria andMchKeyNotBetween(String value1, String value2) {
            addCriterion("storeweixinconfig.MchKey not between", value1, value2, "mchKey");
            return (Criteria) this;
        }

        public Criteria andEntPayKeyIsNull() {
            addCriterion("storeweixinconfig.EntPayKey is null");
            return (Criteria) this;
        }

        public Criteria andEntPayKeyIsNotNull() {
            addCriterion("storeweixinconfig.EntPayKey is not null");
            return (Criteria) this;
        }

        public Criteria andEntPayKeyEqualTo(String value) {
            addCriterion("storeweixinconfig.EntPayKey =", value, "entPayKey");
            return (Criteria) this;
        }

        public Criteria andEntPayKeyEqualToColumn(StoreWeixinConfig.Column column) {
            addCriterion(new StringBuilder("storeweixinconfig.EntPayKey = ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andEntPayKeyNotEqualTo(String value) {
            addCriterion("storeweixinconfig.EntPayKey <>", value, "entPayKey");
            return (Criteria) this;
        }

        public Criteria andEntPayKeyNotEqualToColumn(StoreWeixinConfig.Column column) {
            addCriterion(new StringBuilder("storeweixinconfig.EntPayKey <> ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andEntPayKeyGreaterThan(String value) {
            addCriterion("storeweixinconfig.EntPayKey >", value, "entPayKey");
            return (Criteria) this;
        }

        public Criteria andEntPayKeyGreaterThanColumn(StoreWeixinConfig.Column column) {
            addCriterion(new StringBuilder("storeweixinconfig.EntPayKey > ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andEntPayKeyGreaterThanOrEqualTo(String value) {
            addCriterion("storeweixinconfig.EntPayKey >=", value, "entPayKey");
            return (Criteria) this;
        }

        public Criteria andEntPayKeyGreaterThanOrEqualToColumn(StoreWeixinConfig.Column column) {
            addCriterion(new StringBuilder("storeweixinconfig.EntPayKey >= ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andEntPayKeyLessThan(String value) {
            addCriterion("storeweixinconfig.EntPayKey <", value, "entPayKey");
            return (Criteria) this;
        }

        public Criteria andEntPayKeyLessThanColumn(StoreWeixinConfig.Column column) {
            addCriterion(new StringBuilder("storeweixinconfig.EntPayKey < ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andEntPayKeyLessThanOrEqualTo(String value) {
            addCriterion("storeweixinconfig.EntPayKey <=", value, "entPayKey");
            return (Criteria) this;
        }

        public Criteria andEntPayKeyLessThanOrEqualToColumn(StoreWeixinConfig.Column column) {
            addCriterion(new StringBuilder("storeweixinconfig.EntPayKey <= ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andEntPayKeyLike(String value) {
            addCriterion("storeweixinconfig.EntPayKey like", value, "entPayKey");
            return (Criteria) this;
        }

        public Criteria andEntPayKeyNotLike(String value) {
            addCriterion("storeweixinconfig.EntPayKey not like", value, "entPayKey");
            return (Criteria) this;
        }

        public Criteria andEntPayKeyIn(List<String> values) {
            addCriterion("storeweixinconfig.EntPayKey in", values, "entPayKey");
            return (Criteria) this;
        }

        public Criteria andEntPayKeyNotIn(List<String> values) {
            addCriterion("storeweixinconfig.EntPayKey not in", values, "entPayKey");
            return (Criteria) this;
        }

        public Criteria andEntPayKeyBetween(String value1, String value2) {
            addCriterion("storeweixinconfig.EntPayKey between", value1, value2, "entPayKey");
            return (Criteria) this;
        }

        public Criteria andEntPayKeyNotBetween(String value1, String value2) {
            addCriterion("storeweixinconfig.EntPayKey not between", value1, value2, "entPayKey");
            return (Criteria) this;
        }

        public Criteria andNotifyUrlIsNull() {
            addCriterion("storeweixinconfig.NotifyUrl is null");
            return (Criteria) this;
        }

        public Criteria andNotifyUrlIsNotNull() {
            addCriterion("storeweixinconfig.NotifyUrl is not null");
            return (Criteria) this;
        }

        public Criteria andNotifyUrlEqualTo(String value) {
            addCriterion("storeweixinconfig.NotifyUrl =", value, "notifyUrl");
            return (Criteria) this;
        }

        public Criteria andNotifyUrlEqualToColumn(StoreWeixinConfig.Column column) {
            addCriterion(new StringBuilder("storeweixinconfig.NotifyUrl = ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andNotifyUrlNotEqualTo(String value) {
            addCriterion("storeweixinconfig.NotifyUrl <>", value, "notifyUrl");
            return (Criteria) this;
        }

        public Criteria andNotifyUrlNotEqualToColumn(StoreWeixinConfig.Column column) {
            addCriterion(new StringBuilder("storeweixinconfig.NotifyUrl <> ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andNotifyUrlGreaterThan(String value) {
            addCriterion("storeweixinconfig.NotifyUrl >", value, "notifyUrl");
            return (Criteria) this;
        }

        public Criteria andNotifyUrlGreaterThanColumn(StoreWeixinConfig.Column column) {
            addCriterion(new StringBuilder("storeweixinconfig.NotifyUrl > ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andNotifyUrlGreaterThanOrEqualTo(String value) {
            addCriterion("storeweixinconfig.NotifyUrl >=", value, "notifyUrl");
            return (Criteria) this;
        }

        public Criteria andNotifyUrlGreaterThanOrEqualToColumn(StoreWeixinConfig.Column column) {
            addCriterion(new StringBuilder("storeweixinconfig.NotifyUrl >= ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andNotifyUrlLessThan(String value) {
            addCriterion("storeweixinconfig.NotifyUrl <", value, "notifyUrl");
            return (Criteria) this;
        }

        public Criteria andNotifyUrlLessThanColumn(StoreWeixinConfig.Column column) {
            addCriterion(new StringBuilder("storeweixinconfig.NotifyUrl < ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andNotifyUrlLessThanOrEqualTo(String value) {
            addCriterion("storeweixinconfig.NotifyUrl <=", value, "notifyUrl");
            return (Criteria) this;
        }

        public Criteria andNotifyUrlLessThanOrEqualToColumn(StoreWeixinConfig.Column column) {
            addCriterion(new StringBuilder("storeweixinconfig.NotifyUrl <= ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andNotifyUrlLike(String value) {
            addCriterion("storeweixinconfig.NotifyUrl like", value, "notifyUrl");
            return (Criteria) this;
        }

        public Criteria andNotifyUrlNotLike(String value) {
            addCriterion("storeweixinconfig.NotifyUrl not like", value, "notifyUrl");
            return (Criteria) this;
        }

        public Criteria andNotifyUrlIn(List<String> values) {
            addCriterion("storeweixinconfig.NotifyUrl in", values, "notifyUrl");
            return (Criteria) this;
        }

        public Criteria andNotifyUrlNotIn(List<String> values) {
            addCriterion("storeweixinconfig.NotifyUrl not in", values, "notifyUrl");
            return (Criteria) this;
        }

        public Criteria andNotifyUrlBetween(String value1, String value2) {
            addCriterion("storeweixinconfig.NotifyUrl between", value1, value2, "notifyUrl");
            return (Criteria) this;
        }

        public Criteria andNotifyUrlNotBetween(String value1, String value2) {
            addCriterion("storeweixinconfig.NotifyUrl not between", value1, value2, "notifyUrl");
            return (Criteria) this;
        }

        public Criteria andKeyPathIsNull() {
            addCriterion("storeweixinconfig.KeyPath is null");
            return (Criteria) this;
        }

        public Criteria andKeyPathIsNotNull() {
            addCriterion("storeweixinconfig.KeyPath is not null");
            return (Criteria) this;
        }

        public Criteria andKeyPathEqualTo(String value) {
            addCriterion("storeweixinconfig.KeyPath =", value, "keyPath");
            return (Criteria) this;
        }

        public Criteria andKeyPathEqualToColumn(StoreWeixinConfig.Column column) {
            addCriterion(new StringBuilder("storeweixinconfig.KeyPath = ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andKeyPathNotEqualTo(String value) {
            addCriterion("storeweixinconfig.KeyPath <>", value, "keyPath");
            return (Criteria) this;
        }

        public Criteria andKeyPathNotEqualToColumn(StoreWeixinConfig.Column column) {
            addCriterion(new StringBuilder("storeweixinconfig.KeyPath <> ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andKeyPathGreaterThan(String value) {
            addCriterion("storeweixinconfig.KeyPath >", value, "keyPath");
            return (Criteria) this;
        }

        public Criteria andKeyPathGreaterThanColumn(StoreWeixinConfig.Column column) {
            addCriterion(new StringBuilder("storeweixinconfig.KeyPath > ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andKeyPathGreaterThanOrEqualTo(String value) {
            addCriterion("storeweixinconfig.KeyPath >=", value, "keyPath");
            return (Criteria) this;
        }

        public Criteria andKeyPathGreaterThanOrEqualToColumn(StoreWeixinConfig.Column column) {
            addCriterion(new StringBuilder("storeweixinconfig.KeyPath >= ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andKeyPathLessThan(String value) {
            addCriterion("storeweixinconfig.KeyPath <", value, "keyPath");
            return (Criteria) this;
        }

        public Criteria andKeyPathLessThanColumn(StoreWeixinConfig.Column column) {
            addCriterion(new StringBuilder("storeweixinconfig.KeyPath < ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andKeyPathLessThanOrEqualTo(String value) {
            addCriterion("storeweixinconfig.KeyPath <=", value, "keyPath");
            return (Criteria) this;
        }

        public Criteria andKeyPathLessThanOrEqualToColumn(StoreWeixinConfig.Column column) {
            addCriterion(new StringBuilder("storeweixinconfig.KeyPath <= ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andKeyPathLike(String value) {
            addCriterion("storeweixinconfig.KeyPath like", value, "keyPath");
            return (Criteria) this;
        }

        public Criteria andKeyPathNotLike(String value) {
            addCriterion("storeweixinconfig.KeyPath not like", value, "keyPath");
            return (Criteria) this;
        }

        public Criteria andKeyPathIn(List<String> values) {
            addCriterion("storeweixinconfig.KeyPath in", values, "keyPath");
            return (Criteria) this;
        }

        public Criteria andKeyPathNotIn(List<String> values) {
            addCriterion("storeweixinconfig.KeyPath not in", values, "keyPath");
            return (Criteria) this;
        }

        public Criteria andKeyPathBetween(String value1, String value2) {
            addCriterion("storeweixinconfig.KeyPath between", value1, value2, "keyPath");
            return (Criteria) this;
        }

        public Criteria andKeyPathNotBetween(String value1, String value2) {
            addCriterion("storeweixinconfig.KeyPath not between", value1, value2, "keyPath");
            return (Criteria) this;
        }

        public Criteria andTypeIsNull() {
            addCriterion("storeweixinconfig.`Type` is null");
            return (Criteria) this;
        }

        public Criteria andTypeIsNotNull() {
            addCriterion("storeweixinconfig.`Type` is not null");
            return (Criteria) this;
        }

        public Criteria andTypeEqualTo(Integer value) {
            addCriterion("storeweixinconfig.`Type` =", value, "type");
            return (Criteria) this;
        }

        public Criteria andTypeEqualToColumn(StoreWeixinConfig.Column column) {
            addCriterion(new StringBuilder("storeweixinconfig.`Type` = ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andTypeNotEqualTo(Integer value) {
            addCriterion("storeweixinconfig.`Type` <>", value, "type");
            return (Criteria) this;
        }

        public Criteria andTypeNotEqualToColumn(StoreWeixinConfig.Column column) {
            addCriterion(new StringBuilder("storeweixinconfig.`Type` <> ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andTypeGreaterThan(Integer value) {
            addCriterion("storeweixinconfig.`Type` >", value, "type");
            return (Criteria) this;
        }

        public Criteria andTypeGreaterThanColumn(StoreWeixinConfig.Column column) {
            addCriterion(new StringBuilder("storeweixinconfig.`Type` > ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andTypeGreaterThanOrEqualTo(Integer value) {
            addCriterion("storeweixinconfig.`Type` >=", value, "type");
            return (Criteria) this;
        }

        public Criteria andTypeGreaterThanOrEqualToColumn(StoreWeixinConfig.Column column) {
            addCriterion(new StringBuilder("storeweixinconfig.`Type` >= ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andTypeLessThan(Integer value) {
            addCriterion("storeweixinconfig.`Type` <", value, "type");
            return (Criteria) this;
        }

        public Criteria andTypeLessThanColumn(StoreWeixinConfig.Column column) {
            addCriterion(new StringBuilder("storeweixinconfig.`Type` < ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andTypeLessThanOrEqualTo(Integer value) {
            addCriterion("storeweixinconfig.`Type` <=", value, "type");
            return (Criteria) this;
        }

        public Criteria andTypeLessThanOrEqualToColumn(StoreWeixinConfig.Column column) {
            addCriterion(new StringBuilder("storeweixinconfig.`Type` <= ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andTypeIn(List<Integer> values) {
            addCriterion("storeweixinconfig.`Type` in", values, "type");
            return (Criteria) this;
        }

        public Criteria andTypeNotIn(List<Integer> values) {
            addCriterion("storeweixinconfig.`Type` not in", values, "type");
            return (Criteria) this;
        }

        public Criteria andTypeBetween(Integer value1, Integer value2) {
            addCriterion("storeweixinconfig.`Type` between", value1, value2, "type");
            return (Criteria) this;
        }

        public Criteria andTypeNotBetween(Integer value1, Integer value2) {
            addCriterion("storeweixinconfig.`Type` not between", value1, value2, "type");
            return (Criteria) this;
        }

        public Criteria andNameIsNull() {
            addCriterion("storeweixinconfig.`Name` is null");
            return (Criteria) this;
        }

        public Criteria andNameIsNotNull() {
            addCriterion("storeweixinconfig.`Name` is not null");
            return (Criteria) this;
        }

        public Criteria andNameEqualTo(String value) {
            addCriterion("storeweixinconfig.`Name` =", value, "name");
            return (Criteria) this;
        }

        public Criteria andNameEqualToColumn(StoreWeixinConfig.Column column) {
            addCriterion(new StringBuilder("storeweixinconfig.`Name` = ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andNameNotEqualTo(String value) {
            addCriterion("storeweixinconfig.`Name` <>", value, "name");
            return (Criteria) this;
        }

        public Criteria andNameNotEqualToColumn(StoreWeixinConfig.Column column) {
            addCriterion(new StringBuilder("storeweixinconfig.`Name` <> ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andNameGreaterThan(String value) {
            addCriterion("storeweixinconfig.`Name` >", value, "name");
            return (Criteria) this;
        }

        public Criteria andNameGreaterThanColumn(StoreWeixinConfig.Column column) {
            addCriterion(new StringBuilder("storeweixinconfig.`Name` > ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andNameGreaterThanOrEqualTo(String value) {
            addCriterion("storeweixinconfig.`Name` >=", value, "name");
            return (Criteria) this;
        }

        public Criteria andNameGreaterThanOrEqualToColumn(StoreWeixinConfig.Column column) {
            addCriterion(new StringBuilder("storeweixinconfig.`Name` >= ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andNameLessThan(String value) {
            addCriterion("storeweixinconfig.`Name` <", value, "name");
            return (Criteria) this;
        }

        public Criteria andNameLessThanColumn(StoreWeixinConfig.Column column) {
            addCriterion(new StringBuilder("storeweixinconfig.`Name` < ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andNameLessThanOrEqualTo(String value) {
            addCriterion("storeweixinconfig.`Name` <=", value, "name");
            return (Criteria) this;
        }

        public Criteria andNameLessThanOrEqualToColumn(StoreWeixinConfig.Column column) {
            addCriterion(new StringBuilder("storeweixinconfig.`Name` <= ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andNameLike(String value) {
            addCriterion("storeweixinconfig.`Name` like", value, "name");
            return (Criteria) this;
        }

        public Criteria andNameNotLike(String value) {
            addCriterion("storeweixinconfig.`Name` not like", value, "name");
            return (Criteria) this;
        }

        public Criteria andNameIn(List<String> values) {
            addCriterion("storeweixinconfig.`Name` in", values, "name");
            return (Criteria) this;
        }

        public Criteria andNameNotIn(List<String> values) {
            addCriterion("storeweixinconfig.`Name` not in", values, "name");
            return (Criteria) this;
        }

        public Criteria andNameBetween(String value1, String value2) {
            addCriterion("storeweixinconfig.`Name` between", value1, value2, "name");
            return (Criteria) this;
        }

        public Criteria andNameNotBetween(String value1, String value2) {
            addCriterion("storeweixinconfig.`Name` not between", value1, value2, "name");
            return (Criteria) this;
        }

        public Criteria andDescriptionIsNull() {
            addCriterion("storeweixinconfig.Description is null");
            return (Criteria) this;
        }

        public Criteria andDescriptionIsNotNull() {
            addCriterion("storeweixinconfig.Description is not null");
            return (Criteria) this;
        }

        public Criteria andDescriptionEqualTo(String value) {
            addCriterion("storeweixinconfig.Description =", value, "description");
            return (Criteria) this;
        }

        public Criteria andDescriptionEqualToColumn(StoreWeixinConfig.Column column) {
            addCriterion(new StringBuilder("storeweixinconfig.Description = ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andDescriptionNotEqualTo(String value) {
            addCriterion("storeweixinconfig.Description <>", value, "description");
            return (Criteria) this;
        }

        public Criteria andDescriptionNotEqualToColumn(StoreWeixinConfig.Column column) {
            addCriterion(new StringBuilder("storeweixinconfig.Description <> ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andDescriptionGreaterThan(String value) {
            addCriterion("storeweixinconfig.Description >", value, "description");
            return (Criteria) this;
        }

        public Criteria andDescriptionGreaterThanColumn(StoreWeixinConfig.Column column) {
            addCriterion(new StringBuilder("storeweixinconfig.Description > ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andDescriptionGreaterThanOrEqualTo(String value) {
            addCriterion("storeweixinconfig.Description >=", value, "description");
            return (Criteria) this;
        }

        public Criteria andDescriptionGreaterThanOrEqualToColumn(StoreWeixinConfig.Column column) {
            addCriterion(new StringBuilder("storeweixinconfig.Description >= ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andDescriptionLessThan(String value) {
            addCriterion("storeweixinconfig.Description <", value, "description");
            return (Criteria) this;
        }

        public Criteria andDescriptionLessThanColumn(StoreWeixinConfig.Column column) {
            addCriterion(new StringBuilder("storeweixinconfig.Description < ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andDescriptionLessThanOrEqualTo(String value) {
            addCriterion("storeweixinconfig.Description <=", value, "description");
            return (Criteria) this;
        }

        public Criteria andDescriptionLessThanOrEqualToColumn(StoreWeixinConfig.Column column) {
            addCriterion(new StringBuilder("storeweixinconfig.Description <= ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andDescriptionLike(String value) {
            addCriterion("storeweixinconfig.Description like", value, "description");
            return (Criteria) this;
        }

        public Criteria andDescriptionNotLike(String value) {
            addCriterion("storeweixinconfig.Description not like", value, "description");
            return (Criteria) this;
        }

        public Criteria andDescriptionIn(List<String> values) {
            addCriterion("storeweixinconfig.Description in", values, "description");
            return (Criteria) this;
        }

        public Criteria andDescriptionNotIn(List<String> values) {
            addCriterion("storeweixinconfig.Description not in", values, "description");
            return (Criteria) this;
        }

        public Criteria andDescriptionBetween(String value1, String value2) {
            addCriterion("storeweixinconfig.Description between", value1, value2, "description");
            return (Criteria) this;
        }

        public Criteria andDescriptionNotBetween(String value1, String value2) {
            addCriterion("storeweixinconfig.Description not between", value1, value2, "description");
            return (Criteria) this;
        }

        public Criteria andCanOnlineEntPayIsNull() {
            addCriterion("storeweixinconfig.CanOnlineEntPay is null");
            return (Criteria) this;
        }

        public Criteria andCanOnlineEntPayIsNotNull() {
            addCriterion("storeweixinconfig.CanOnlineEntPay is not null");
            return (Criteria) this;
        }

        public Criteria andCanOnlineEntPayEqualTo(Boolean value) {
            addCriterion("storeweixinconfig.CanOnlineEntPay =", value, "canOnlineEntPay");
            return (Criteria) this;
        }

        public Criteria andCanOnlineEntPayEqualToColumn(StoreWeixinConfig.Column column) {
            addCriterion(new StringBuilder("storeweixinconfig.CanOnlineEntPay = ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andCanOnlineEntPayNotEqualTo(Boolean value) {
            addCriterion("storeweixinconfig.CanOnlineEntPay <>", value, "canOnlineEntPay");
            return (Criteria) this;
        }

        public Criteria andCanOnlineEntPayNotEqualToColumn(StoreWeixinConfig.Column column) {
            addCriterion(new StringBuilder("storeweixinconfig.CanOnlineEntPay <> ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andCanOnlineEntPayGreaterThan(Boolean value) {
            addCriterion("storeweixinconfig.CanOnlineEntPay >", value, "canOnlineEntPay");
            return (Criteria) this;
        }

        public Criteria andCanOnlineEntPayGreaterThanColumn(StoreWeixinConfig.Column column) {
            addCriterion(new StringBuilder("storeweixinconfig.CanOnlineEntPay > ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andCanOnlineEntPayGreaterThanOrEqualTo(Boolean value) {
            addCriterion("storeweixinconfig.CanOnlineEntPay >=", value, "canOnlineEntPay");
            return (Criteria) this;
        }

        public Criteria andCanOnlineEntPayGreaterThanOrEqualToColumn(StoreWeixinConfig.Column column) {
            addCriterion(new StringBuilder("storeweixinconfig.CanOnlineEntPay >= ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andCanOnlineEntPayLessThan(Boolean value) {
            addCriterion("storeweixinconfig.CanOnlineEntPay <", value, "canOnlineEntPay");
            return (Criteria) this;
        }

        public Criteria andCanOnlineEntPayLessThanColumn(StoreWeixinConfig.Column column) {
            addCriterion(new StringBuilder("storeweixinconfig.CanOnlineEntPay < ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andCanOnlineEntPayLessThanOrEqualTo(Boolean value) {
            addCriterion("storeweixinconfig.CanOnlineEntPay <=", value, "canOnlineEntPay");
            return (Criteria) this;
        }

        public Criteria andCanOnlineEntPayLessThanOrEqualToColumn(StoreWeixinConfig.Column column) {
            addCriterion(new StringBuilder("storeweixinconfig.CanOnlineEntPay <= ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andCanOnlineEntPayIn(List<Boolean> values) {
            addCriterion("storeweixinconfig.CanOnlineEntPay in", values, "canOnlineEntPay");
            return (Criteria) this;
        }

        public Criteria andCanOnlineEntPayNotIn(List<Boolean> values) {
            addCriterion("storeweixinconfig.CanOnlineEntPay not in", values, "canOnlineEntPay");
            return (Criteria) this;
        }

        public Criteria andCanOnlineEntPayBetween(Boolean value1, Boolean value2) {
            addCriterion("storeweixinconfig.CanOnlineEntPay between", value1, value2, "canOnlineEntPay");
            return (Criteria) this;
        }

        public Criteria andCanOnlineEntPayNotBetween(Boolean value1, Boolean value2) {
            addCriterion("storeweixinconfig.CanOnlineEntPay not between", value1, value2, "canOnlineEntPay");
            return (Criteria) this;
        }

        public Criteria andFrontAccessUrlIsNull() {
            addCriterion("storeweixinconfig.FrontAccessUrl is null");
            return (Criteria) this;
        }

        public Criteria andFrontAccessUrlIsNotNull() {
            addCriterion("storeweixinconfig.FrontAccessUrl is not null");
            return (Criteria) this;
        }

        public Criteria andFrontAccessUrlEqualTo(String value) {
            addCriterion("storeweixinconfig.FrontAccessUrl =", value, "frontAccessUrl");
            return (Criteria) this;
        }

        public Criteria andFrontAccessUrlEqualToColumn(StoreWeixinConfig.Column column) {
            addCriterion(new StringBuilder("storeweixinconfig.FrontAccessUrl = ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andFrontAccessUrlNotEqualTo(String value) {
            addCriterion("storeweixinconfig.FrontAccessUrl <>", value, "frontAccessUrl");
            return (Criteria) this;
        }

        public Criteria andFrontAccessUrlNotEqualToColumn(StoreWeixinConfig.Column column) {
            addCriterion(new StringBuilder("storeweixinconfig.FrontAccessUrl <> ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andFrontAccessUrlGreaterThan(String value) {
            addCriterion("storeweixinconfig.FrontAccessUrl >", value, "frontAccessUrl");
            return (Criteria) this;
        }

        public Criteria andFrontAccessUrlGreaterThanColumn(StoreWeixinConfig.Column column) {
            addCriterion(new StringBuilder("storeweixinconfig.FrontAccessUrl > ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andFrontAccessUrlGreaterThanOrEqualTo(String value) {
            addCriterion("storeweixinconfig.FrontAccessUrl >=", value, "frontAccessUrl");
            return (Criteria) this;
        }

        public Criteria andFrontAccessUrlGreaterThanOrEqualToColumn(StoreWeixinConfig.Column column) {
            addCriterion(new StringBuilder("storeweixinconfig.FrontAccessUrl >= ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andFrontAccessUrlLessThan(String value) {
            addCriterion("storeweixinconfig.FrontAccessUrl <", value, "frontAccessUrl");
            return (Criteria) this;
        }

        public Criteria andFrontAccessUrlLessThanColumn(StoreWeixinConfig.Column column) {
            addCriterion(new StringBuilder("storeweixinconfig.FrontAccessUrl < ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andFrontAccessUrlLessThanOrEqualTo(String value) {
            addCriterion("storeweixinconfig.FrontAccessUrl <=", value, "frontAccessUrl");
            return (Criteria) this;
        }

        public Criteria andFrontAccessUrlLessThanOrEqualToColumn(StoreWeixinConfig.Column column) {
            addCriterion(new StringBuilder("storeweixinconfig.FrontAccessUrl <= ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andFrontAccessUrlLike(String value) {
            addCriterion("storeweixinconfig.FrontAccessUrl like", value, "frontAccessUrl");
            return (Criteria) this;
        }

        public Criteria andFrontAccessUrlNotLike(String value) {
            addCriterion("storeweixinconfig.FrontAccessUrl not like", value, "frontAccessUrl");
            return (Criteria) this;
        }

        public Criteria andFrontAccessUrlIn(List<String> values) {
            addCriterion("storeweixinconfig.FrontAccessUrl in", values, "frontAccessUrl");
            return (Criteria) this;
        }

        public Criteria andFrontAccessUrlNotIn(List<String> values) {
            addCriterion("storeweixinconfig.FrontAccessUrl not in", values, "frontAccessUrl");
            return (Criteria) this;
        }

        public Criteria andFrontAccessUrlBetween(String value1, String value2) {
            addCriterion("storeweixinconfig.FrontAccessUrl between", value1, value2, "frontAccessUrl");
            return (Criteria) this;
        }

        public Criteria andFrontAccessUrlNotBetween(String value1, String value2) {
            addCriterion("storeweixinconfig.FrontAccessUrl not between", value1, value2, "frontAccessUrl");
            return (Criteria) this;
        }

        public Criteria andDeletedIsNull() {
            addCriterion("storeweixinconfig.Deleted is null");
            return (Criteria) this;
        }

        public Criteria andDeletedIsNotNull() {
            addCriterion("storeweixinconfig.Deleted is not null");
            return (Criteria) this;
        }

        public Criteria andDeletedEqualTo(Boolean value) {
            addCriterion("storeweixinconfig.Deleted =", value, "deleted");
            return (Criteria) this;
        }

        public Criteria andDeletedEqualToColumn(StoreWeixinConfig.Column column) {
            addCriterion(new StringBuilder("storeweixinconfig.Deleted = ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andDeletedNotEqualTo(Boolean value) {
            addCriterion("storeweixinconfig.Deleted <>", value, "deleted");
            return (Criteria) this;
        }

        public Criteria andDeletedNotEqualToColumn(StoreWeixinConfig.Column column) {
            addCriterion(new StringBuilder("storeweixinconfig.Deleted <> ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andDeletedGreaterThan(Boolean value) {
            addCriterion("storeweixinconfig.Deleted >", value, "deleted");
            return (Criteria) this;
        }

        public Criteria andDeletedGreaterThanColumn(StoreWeixinConfig.Column column) {
            addCriterion(new StringBuilder("storeweixinconfig.Deleted > ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andDeletedGreaterThanOrEqualTo(Boolean value) {
            addCriterion("storeweixinconfig.Deleted >=", value, "deleted");
            return (Criteria) this;
        }

        public Criteria andDeletedGreaterThanOrEqualToColumn(StoreWeixinConfig.Column column) {
            addCriterion(new StringBuilder("storeweixinconfig.Deleted >= ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andDeletedLessThan(Boolean value) {
            addCriterion("storeweixinconfig.Deleted <", value, "deleted");
            return (Criteria) this;
        }

        public Criteria andDeletedLessThanColumn(StoreWeixinConfig.Column column) {
            addCriterion(new StringBuilder("storeweixinconfig.Deleted < ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andDeletedLessThanOrEqualTo(Boolean value) {
            addCriterion("storeweixinconfig.Deleted <=", value, "deleted");
            return (Criteria) this;
        }

        public Criteria andDeletedLessThanOrEqualToColumn(StoreWeixinConfig.Column column) {
            addCriterion(new StringBuilder("storeweixinconfig.Deleted <= ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andDeletedIn(List<Boolean> values) {
            addCriterion("storeweixinconfig.Deleted in", values, "deleted");
            return (Criteria) this;
        }

        public Criteria andDeletedNotIn(List<Boolean> values) {
            addCriterion("storeweixinconfig.Deleted not in", values, "deleted");
            return (Criteria) this;
        }

        public Criteria andDeletedBetween(Boolean value1, Boolean value2) {
            addCriterion("storeweixinconfig.Deleted between", value1, value2, "deleted");
            return (Criteria) this;
        }

        public Criteria andDeletedNotBetween(Boolean value1, Boolean value2) {
            addCriterion("storeweixinconfig.Deleted not between", value1, value2, "deleted");
            return (Criteria) this;
        }

        public Criteria andCreateUserIsNull() {
            addCriterion("storeweixinconfig.`CreateUser` is null");
            return (Criteria) this;
        }

        public Criteria andCreateUserIsNotNull() {
            addCriterion("storeweixinconfig.`CreateUser` is not null");
            return (Criteria) this;
        }

        public Criteria andCreateUserEqualTo(String value) {
            addCriterion("storeweixinconfig.`CreateUser` =", value, "createUser");
            return (Criteria) this;
        }

        public Criteria andCreateUserEqualToColumn(StoreWeixinConfig.Column column) {
            addCriterion(new StringBuilder("storeweixinconfig.`CreateUser` = ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andCreateUserNotEqualTo(String value) {
            addCriterion("storeweixinconfig.`CreateUser` <>", value, "createUser");
            return (Criteria) this;
        }

        public Criteria andCreateUserNotEqualToColumn(StoreWeixinConfig.Column column) {
            addCriterion(new StringBuilder("storeweixinconfig.`CreateUser` <> ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andCreateUserGreaterThan(String value) {
            addCriterion("storeweixinconfig.`CreateUser` >", value, "createUser");
            return (Criteria) this;
        }

        public Criteria andCreateUserGreaterThanColumn(StoreWeixinConfig.Column column) {
            addCriterion(new StringBuilder("storeweixinconfig.`CreateUser` > ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andCreateUserGreaterThanOrEqualTo(String value) {
            addCriterion("storeweixinconfig.`CreateUser` >=", value, "createUser");
            return (Criteria) this;
        }

        public Criteria andCreateUserGreaterThanOrEqualToColumn(StoreWeixinConfig.Column column) {
            addCriterion(new StringBuilder("storeweixinconfig.`CreateUser` >= ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andCreateUserLessThan(String value) {
            addCriterion("storeweixinconfig.`CreateUser` <", value, "createUser");
            return (Criteria) this;
        }

        public Criteria andCreateUserLessThanColumn(StoreWeixinConfig.Column column) {
            addCriterion(new StringBuilder("storeweixinconfig.`CreateUser` < ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andCreateUserLessThanOrEqualTo(String value) {
            addCriterion("storeweixinconfig.`CreateUser` <=", value, "createUser");
            return (Criteria) this;
        }

        public Criteria andCreateUserLessThanOrEqualToColumn(StoreWeixinConfig.Column column) {
            addCriterion(new StringBuilder("storeweixinconfig.`CreateUser` <= ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andCreateUserLike(String value) {
            addCriterion("storeweixinconfig.`CreateUser` like", value, "createUser");
            return (Criteria) this;
        }

        public Criteria andCreateUserNotLike(String value) {
            addCriterion("storeweixinconfig.`CreateUser` not like", value, "createUser");
            return (Criteria) this;
        }

        public Criteria andCreateUserIn(List<String> values) {
            addCriterion("storeweixinconfig.`CreateUser` in", values, "createUser");
            return (Criteria) this;
        }

        public Criteria andCreateUserNotIn(List<String> values) {
            addCriterion("storeweixinconfig.`CreateUser` not in", values, "createUser");
            return (Criteria) this;
        }

        public Criteria andCreateUserBetween(String value1, String value2) {
            addCriterion("storeweixinconfig.`CreateUser` between", value1, value2, "createUser");
            return (Criteria) this;
        }

        public Criteria andCreateUserNotBetween(String value1, String value2) {
            addCriterion("storeweixinconfig.`CreateUser` not between", value1, value2, "createUser");
            return (Criteria) this;
        }

        public Criteria andCreateTimeIsNull() {
            addCriterion("storeweixinconfig.CreateTime is null");
            return (Criteria) this;
        }

        public Criteria andCreateTimeIsNotNull() {
            addCriterion("storeweixinconfig.CreateTime is not null");
            return (Criteria) this;
        }

        public Criteria andCreateTimeEqualTo(Date value) {
            addCriterion("storeweixinconfig.CreateTime =", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeEqualToColumn(StoreWeixinConfig.Column column) {
            addCriterion(new StringBuilder("storeweixinconfig.CreateTime = ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andCreateTimeNotEqualTo(Date value) {
            addCriterion("storeweixinconfig.CreateTime <>", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeNotEqualToColumn(StoreWeixinConfig.Column column) {
            addCriterion(new StringBuilder("storeweixinconfig.CreateTime <> ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andCreateTimeGreaterThan(Date value) {
            addCriterion("storeweixinconfig.CreateTime >", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeGreaterThanColumn(StoreWeixinConfig.Column column) {
            addCriterion(new StringBuilder("storeweixinconfig.CreateTime > ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andCreateTimeGreaterThanOrEqualTo(Date value) {
            addCriterion("storeweixinconfig.CreateTime >=", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeGreaterThanOrEqualToColumn(StoreWeixinConfig.Column column) {
            addCriterion(new StringBuilder("storeweixinconfig.CreateTime >= ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andCreateTimeLessThan(Date value) {
            addCriterion("storeweixinconfig.CreateTime <", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeLessThanColumn(StoreWeixinConfig.Column column) {
            addCriterion(new StringBuilder("storeweixinconfig.CreateTime < ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andCreateTimeLessThanOrEqualTo(Date value) {
            addCriterion("storeweixinconfig.CreateTime <=", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeLessThanOrEqualToColumn(StoreWeixinConfig.Column column) {
            addCriterion(new StringBuilder("storeweixinconfig.CreateTime <= ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andCreateTimeIn(List<Date> values) {
            addCriterion("storeweixinconfig.CreateTime in", values, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeNotIn(List<Date> values) {
            addCriterion("storeweixinconfig.CreateTime not in", values, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeBetween(Date value1, Date value2) {
            addCriterion("storeweixinconfig.CreateTime between", value1, value2, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeNotBetween(Date value1, Date value2) {
            addCriterion("storeweixinconfig.CreateTime not between", value1, value2, "createTime");
            return (Criteria) this;
        }

        public Criteria andUpdateUserIsNull() {
            addCriterion("storeweixinconfig.UpdateUser is null");
            return (Criteria) this;
        }

        public Criteria andUpdateUserIsNotNull() {
            addCriterion("storeweixinconfig.UpdateUser is not null");
            return (Criteria) this;
        }

        public Criteria andUpdateUserEqualTo(String value) {
            addCriterion("storeweixinconfig.UpdateUser =", value, "updateUser");
            return (Criteria) this;
        }

        public Criteria andUpdateUserEqualToColumn(StoreWeixinConfig.Column column) {
            addCriterion(new StringBuilder("storeweixinconfig.UpdateUser = ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andUpdateUserNotEqualTo(String value) {
            addCriterion("storeweixinconfig.UpdateUser <>", value, "updateUser");
            return (Criteria) this;
        }

        public Criteria andUpdateUserNotEqualToColumn(StoreWeixinConfig.Column column) {
            addCriterion(new StringBuilder("storeweixinconfig.UpdateUser <> ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andUpdateUserGreaterThan(String value) {
            addCriterion("storeweixinconfig.UpdateUser >", value, "updateUser");
            return (Criteria) this;
        }

        public Criteria andUpdateUserGreaterThanColumn(StoreWeixinConfig.Column column) {
            addCriterion(new StringBuilder("storeweixinconfig.UpdateUser > ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andUpdateUserGreaterThanOrEqualTo(String value) {
            addCriterion("storeweixinconfig.UpdateUser >=", value, "updateUser");
            return (Criteria) this;
        }

        public Criteria andUpdateUserGreaterThanOrEqualToColumn(StoreWeixinConfig.Column column) {
            addCriterion(new StringBuilder("storeweixinconfig.UpdateUser >= ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andUpdateUserLessThan(String value) {
            addCriterion("storeweixinconfig.UpdateUser <", value, "updateUser");
            return (Criteria) this;
        }

        public Criteria andUpdateUserLessThanColumn(StoreWeixinConfig.Column column) {
            addCriterion(new StringBuilder("storeweixinconfig.UpdateUser < ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andUpdateUserLessThanOrEqualTo(String value) {
            addCriterion("storeweixinconfig.UpdateUser <=", value, "updateUser");
            return (Criteria) this;
        }

        public Criteria andUpdateUserLessThanOrEqualToColumn(StoreWeixinConfig.Column column) {
            addCriterion(new StringBuilder("storeweixinconfig.UpdateUser <= ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andUpdateUserLike(String value) {
            addCriterion("storeweixinconfig.UpdateUser like", value, "updateUser");
            return (Criteria) this;
        }

        public Criteria andUpdateUserNotLike(String value) {
            addCriterion("storeweixinconfig.UpdateUser not like", value, "updateUser");
            return (Criteria) this;
        }

        public Criteria andUpdateUserIn(List<String> values) {
            addCriterion("storeweixinconfig.UpdateUser in", values, "updateUser");
            return (Criteria) this;
        }

        public Criteria andUpdateUserNotIn(List<String> values) {
            addCriterion("storeweixinconfig.UpdateUser not in", values, "updateUser");
            return (Criteria) this;
        }

        public Criteria andUpdateUserBetween(String value1, String value2) {
            addCriterion("storeweixinconfig.UpdateUser between", value1, value2, "updateUser");
            return (Criteria) this;
        }

        public Criteria andUpdateUserNotBetween(String value1, String value2) {
            addCriterion("storeweixinconfig.UpdateUser not between", value1, value2, "updateUser");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeIsNull() {
            addCriterion("storeweixinconfig.UpdateTime is null");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeIsNotNull() {
            addCriterion("storeweixinconfig.UpdateTime is not null");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeEqualTo(Date value) {
            addCriterion("storeweixinconfig.UpdateTime =", value, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeEqualToColumn(StoreWeixinConfig.Column column) {
            addCriterion(new StringBuilder("storeweixinconfig.UpdateTime = ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andUpdateTimeNotEqualTo(Date value) {
            addCriterion("storeweixinconfig.UpdateTime <>", value, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeNotEqualToColumn(StoreWeixinConfig.Column column) {
            addCriterion(new StringBuilder("storeweixinconfig.UpdateTime <> ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andUpdateTimeGreaterThan(Date value) {
            addCriterion("storeweixinconfig.UpdateTime >", value, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeGreaterThanColumn(StoreWeixinConfig.Column column) {
            addCriterion(new StringBuilder("storeweixinconfig.UpdateTime > ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andUpdateTimeGreaterThanOrEqualTo(Date value) {
            addCriterion("storeweixinconfig.UpdateTime >=", value, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeGreaterThanOrEqualToColumn(StoreWeixinConfig.Column column) {
            addCriterion(new StringBuilder("storeweixinconfig.UpdateTime >= ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andUpdateTimeLessThan(Date value) {
            addCriterion("storeweixinconfig.UpdateTime <", value, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeLessThanColumn(StoreWeixinConfig.Column column) {
            addCriterion(new StringBuilder("storeweixinconfig.UpdateTime < ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andUpdateTimeLessThanOrEqualTo(Date value) {
            addCriterion("storeweixinconfig.UpdateTime <=", value, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeLessThanOrEqualToColumn(StoreWeixinConfig.Column column) {
            addCriterion(new StringBuilder("storeweixinconfig.UpdateTime <= ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andUpdateTimeIn(List<Date> values) {
            addCriterion("storeweixinconfig.UpdateTime in", values, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeNotIn(List<Date> values) {
            addCriterion("storeweixinconfig.UpdateTime not in", values, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeBetween(Date value1, Date value2) {
            addCriterion("storeweixinconfig.UpdateTime between", value1, value2, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeNotBetween(Date value1, Date value2) {
            addCriterion("storeweixinconfig.UpdateTime not between", value1, value2, "updateTime");
            return (Criteria) this;
        }
    }

    public static class Criteria extends GeneratedCriteria {
        private StoreWeixinConfigExample example;

        protected Criteria(StoreWeixinConfigExample example) {
            super();
            this.example = example;
        }

        public StoreWeixinConfigExample example() {
            return this.example;
        }

        @Deprecated
        public Criteria andIf(boolean ifAdd, ICriteriaAdd add) {
            if (ifAdd) {
                add.add(this);
            }
            return this;
        }

        public Criteria when(boolean condition, ICriteriaWhen then) {
            if (condition) {
                then.criteria(this);
            }
            return this;
        }

        public Criteria when(boolean condition, ICriteriaWhen then, ICriteriaWhen otherwise) {
            if (condition) {
                then.criteria(this);
            } else {
                otherwise.criteria(this);
            }
            return this;
        }

        public Criteria andLogicalDeleted(boolean deleted) {
            return deleted ? andDeletedEqualTo(StoreWeixinConfig.Deleted.IS_DELETED.value()) : andDeletedNotEqualTo(StoreWeixinConfig.Deleted.IS_DELETED.value());
        }

        @Deprecated
        public interface ICriteriaAdd {
            Criteria add(Criteria add);
        }
    }

    public static class Criterion {
        private String condition;

        private Object value;

        private Object secondValue;

        private boolean noValue;

        private boolean singleValue;

        private boolean betweenValue;

        private boolean listValue;

        private String typeHandler;

        public String getCondition() {
            return condition;
        }

        public Object getValue() {
            return value;
        }

        public Object getSecondValue() {
            return secondValue;
        }

        public boolean isNoValue() {
            return noValue;
        }

        public boolean isSingleValue() {
            return singleValue;
        }

        public boolean isBetweenValue() {
            return betweenValue;
        }

        public boolean isListValue() {
            return listValue;
        }

        public String getTypeHandler() {
            return typeHandler;
        }

        protected Criterion(String condition) {
            super();
            this.condition = condition;
            this.typeHandler = null;
            this.noValue = true;
        }

        protected Criterion(String condition, Object value, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.typeHandler = typeHandler;
            if (value instanceof List<?>) {
                this.listValue = true;
            } else {
                this.singleValue = true;
            }
        }

        protected Criterion(String condition, Object value) {
            this(condition, value, null);
        }

        protected Criterion(String condition, Object value, Object secondValue, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.secondValue = secondValue;
            this.typeHandler = typeHandler;
            this.betweenValue = true;
        }

        protected Criterion(String condition, Object value, Object secondValue) {
            this(condition, value, secondValue, null);
        }
    }

    public interface ICriteriaWhen {
        void criteria(Criteria criteria);
    }

    public interface IExampleWhen {
        void example(com.ecoolex.hotel.saas.entity.StoreWeixinConfigExample example);
    }
}